Описание
Возвращает значение, показывающее состояние редактирования
текущей записи.
Значение
Возвращаемое значение имеет тип Long и представляет
текущее состояние редактирования с помощью констант, перечисленных в следующей
таблице:
dbEditNone Операция редактирования в данный момент не выполняется. DbEditInProgress Был вызван метод Edit, и текущая запись помещена в буфер копирования. dbEditAdd Был вызван метод AddNew, и текущая запись, помещенная в буфер копирования, является новой записью, которая еще не сохранена в базе данных.
Замечания
Свойство EditMode особенно полезно, если процесс
редактирования прерван, например, из-за нарушения условий на значение.
Пользователь имеет возможность использовать свойство EditMode, чтобы
определить, следует ли вызывать метод Update или
CancelUpdate.
Кроме того, проверка, имеет ли свойство LockEdits
значение True, а свойство EditMode значение
dbEditInProgress, позволяет определить, является ли текущая страница
данных заблокированной.
Пример
Следующая программа демонстрирует значение свойства EditMode
при разных условиях. Для выполнения данной процедуры требуется функция
EditModeOutput.
Sub EditModeX()
Dim dbsNorthwind As Database
Dim rstEmployees As Recordset
Set dbsNorthwind = OpenDatabase("Борей.mdb")
Set rstEmployees = dbsNorthwind.OpenRecordset("Сотрудники", dbOpenDynaset)
' Демонстрирует значение свойства EditMode в разных
' режимах редактирования.
With rstEmployees
EditModeOutput "До вызова метода Edit или AddNew:", .EditMode
.Edit
EditModeOutput "После вызова метода Edit:", .EditMode
.Update
EditModeOutput "После вызова метода Update:", .EditMode
.AddNew
EditModeOutput "После вызова метода AddNew:", .EditMode
.CancelUpdate
EditModeOutput "После вызова метода CancelUpdate:", .EditMode
.Close
End With
dbsNorthwind.Close
End Sub
Function EditModeOutput(strTemp As String, intEditMode As Integer)
' Печатает отчет о значениях свойства EditMode.
Debug.Print strTemp
Debug.Print " EditMode = ";
Select Case intEditMode
Case dbEditNone
Debug.Print "dbEditNone"
Case dbEditInProgress
Debug.Print "dbEditInProgress"
Case dbEditAdd
Debug.Print "dbEditAdd"
End Select
End Function